package com.yh.ldzl.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 过程检验单对象 qc_ipqc
 * 
 * @author yanghuai
 * @date 2025-07-07
 */
public class QcIpqc extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 检验单ID */
    private Long ipqcId;

    /** 检验单编号 */
    @Excel(name = "检验单编号")
    private String ipqcCode;

    /** 检验单名称 */
    @Excel(name = "检验单名称")
    private String ipqcName;

    /** 检验类型 */
    @Excel(name = "检验类型")
    private String ipqcType;

    /** 检验模板ID */
    private Long templateId;

    /** 来源单据ID */
    private Long sourceDocId;

    /** 来源单据类型 */
    @Excel(name = "来源单据类型")
    private String sourceDocType;

    /** 来源单据编号 */
    @Excel(name = "来源单据编号")
    private String sourceDocCode;

    /** 来源单据行ID */
    private Long sourceLineId;

    /** 工单ID */
    private Long workOrderId;

    /** 工单编码 */
    @Excel(name = "工单编码")
    private String workOrderCode;

    /** 工单名称 */
    private String workOrderName;

    /** 任务ID */
    private Long taskId;

    /** 任务编号 */
    @Excel(name = "任务编号")
    private String taskCode;

    /** 任务名称 */
    private String taskName;

    /** 工厂ID */
    private Long factoryId;

    /** 工厂编号 */
    @Excel(name = "工厂编号")
    private String factoryCode;

    /** 工厂名称 */
    private String factoryName;

    /** 工序ID */
    private Long processId;

    /** 工序编码 */
    @Excel(name = "工序编码")
    private String processCode;

    /** 工序名称 */
    private String processName;

    /** 物料ID */
    private Long productId;

    /** 物料编码 */
    @Excel(name = "物料编码")
    private String productCode;

    /** 物料名称 */
    @Excel(name = "物料名称")
    private String productName;

    /** 规格型号 */
    @Excel(name = "规格型号")
    private String productSfn;

    /** 单位 */
    @Excel(name = "单位")
    private String unit;

    /** 检测数量 */
    @Excel(name = "检测数量")
    private BigDecimal quantityCheckNum;

    /** 不合格数 */
    @Excel(name = "不合格数")
    private BigDecimal quantityUnqualifiedNum;

    /** 合格品数量 */
    @Excel(name = "合格品数量")
    private BigDecimal quantityQualifiedNum;

    /** 致命缺陷率 */
    private BigDecimal crRate;

    /** 严重缺陷率 */
    private BigDecimal majRate;

    /** 轻微缺陷率 */
    private BigDecimal minRate;

    /** 致命缺陷数量 */
    private BigDecimal crQuantityNum;

    /** 严重缺陷数量 */
    private BigDecimal majQuantityNum;

    /** 轻微缺陷数量 */
    private BigDecimal minQuantityNum;

    /** 检测结果 */
    @Excel(name = "检测结果")
    private String checkResult;

    /** 检测日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "检测日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date inspectDate;

    /** 检测人员 */
    private String inspector;

    /** 单据状态(1/合格，2/不合格，3/待检) */
    @Excel(name = "单据状态(1/合格，2/不合格，3/待检)")
    private String status;

    /** 预留字段1 */
    private String attr1;

    /** 预留字段2 */
    private String attr2;

    /** 预留字段3 */
    private Long attr3;

    /** 预留字段4 */
    private Long attr4;

    /** 删除标志（0代表存在 1代表删除） */
    private String isDelete;

    public void setIpqcId(Long ipqcId) 
    {
        this.ipqcId = ipqcId;
    }

    public Long getIpqcId() 
    {
        return ipqcId;
    }

    public void setIpqcCode(String ipqcCode) 
    {
        this.ipqcCode = ipqcCode;
    }

    public String getIpqcCode() 
    {
        return ipqcCode;
    }

    public void setIpqcName(String ipqcName) 
    {
        this.ipqcName = ipqcName;
    }

    public String getIpqcName() 
    {
        return ipqcName;
    }

    public void setIpqcType(String ipqcType) 
    {
        this.ipqcType = ipqcType;
    }

    public String getIpqcType() 
    {
        return ipqcType;
    }

    public void setTemplateId(Long templateId) 
    {
        this.templateId = templateId;
    }

    public Long getTemplateId() 
    {
        return templateId;
    }

    public void setSourceDocId(Long sourceDocId) 
    {
        this.sourceDocId = sourceDocId;
    }

    public Long getSourceDocId() 
    {
        return sourceDocId;
    }

    public void setSourceDocType(String sourceDocType) 
    {
        this.sourceDocType = sourceDocType;
    }

    public String getSourceDocType() 
    {
        return sourceDocType;
    }

    public void setSourceDocCode(String sourceDocCode) 
    {
        this.sourceDocCode = sourceDocCode;
    }

    public String getSourceDocCode() 
    {
        return sourceDocCode;
    }

    public void setSourceLineId(Long sourceLineId) 
    {
        this.sourceLineId = sourceLineId;
    }

    public Long getSourceLineId() 
    {
        return sourceLineId;
    }

    public void setWorkOrderId(Long workOrderId) 
    {
        this.workOrderId = workOrderId;
    }

    public Long getWorkOrderId() 
    {
        return workOrderId;
    }

    public void setWorkOrderCode(String workOrderCode) 
    {
        this.workOrderCode = workOrderCode;
    }

    public String getWorkOrderCode() 
    {
        return workOrderCode;
    }

    public void setWorkOrderName(String workOrderName) 
    {
        this.workOrderName = workOrderName;
    }

    public String getWorkOrderName() 
    {
        return workOrderName;
    }

    public void setTaskId(Long taskId) 
    {
        this.taskId = taskId;
    }

    public Long getTaskId() 
    {
        return taskId;
    }

    public void setTaskCode(String taskCode) 
    {
        this.taskCode = taskCode;
    }

    public String getTaskCode() 
    {
        return taskCode;
    }

    public void setTaskName(String taskName) 
    {
        this.taskName = taskName;
    }

    public String getTaskName() 
    {
        return taskName;
    }

    public void setFactoryId(Long factoryId) 
    {
        this.factoryId = factoryId;
    }

    public Long getFactoryId() 
    {
        return factoryId;
    }

    public void setFactoryCode(String factoryCode) 
    {
        this.factoryCode = factoryCode;
    }

    public String getFactoryCode() 
    {
        return factoryCode;
    }

    public void setFactoryName(String factoryName) 
    {
        this.factoryName = factoryName;
    }

    public String getFactoryName() 
    {
        return factoryName;
    }

    public void setProcessId(Long processId) 
    {
        this.processId = processId;
    }

    public Long getProcessId() 
    {
        return processId;
    }

    public void setProcessCode(String processCode) 
    {
        this.processCode = processCode;
    }

    public String getProcessCode() 
    {
        return processCode;
    }

    public void setProcessName(String processName) 
    {
        this.processName = processName;
    }

    public String getProcessName() 
    {
        return processName;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public String getProductCode() {
        return productCode;
    }

    public void setProductCode(String productCode) {
        this.productCode = productCode;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public String getProductSfn() {
        return productSfn;
    }

    public void setProductSfn(String productSfn) {
        this.productSfn = productSfn;
    }

    public void setUnit(String unit)
    {
        this.unit = unit;
    }

    public String getUnit() 
    {
        return unit;
    }

    public void setQuantityCheckNum(BigDecimal quantityCheckNum) 
    {
        this.quantityCheckNum = quantityCheckNum;
    }

    public BigDecimal getQuantityCheckNum() 
    {
        return quantityCheckNum;
    }

    public void setQuantityUnqualifiedNum(BigDecimal quantityUnqualifiedNum) 
    {
        this.quantityUnqualifiedNum = quantityUnqualifiedNum;
    }

    public BigDecimal getQuantityUnqualifiedNum() 
    {
        return quantityUnqualifiedNum;
    }

    public void setQuantityQualifiedNum(BigDecimal quantityQualifiedNum) 
    {
        this.quantityQualifiedNum = quantityQualifiedNum;
    }

    public BigDecimal getQuantityQualifiedNum() 
    {
        return quantityQualifiedNum;
    }

    public void setCrRate(BigDecimal crRate) 
    {
        this.crRate = crRate;
    }

    public BigDecimal getCrRate() 
    {
        return crRate;
    }

    public void setMajRate(BigDecimal majRate) 
    {
        this.majRate = majRate;
    }

    public BigDecimal getMajRate() 
    {
        return majRate;
    }

    public void setMinRate(BigDecimal minRate) 
    {
        this.minRate = minRate;
    }

    public BigDecimal getMinRate() 
    {
        return minRate;
    }

    public void setCrQuantityNum(BigDecimal crQuantityNum) 
    {
        this.crQuantityNum = crQuantityNum;
    }

    public BigDecimal getCrQuantityNum() 
    {
        return crQuantityNum;
    }

    public void setMajQuantityNum(BigDecimal majQuantityNum) 
    {
        this.majQuantityNum = majQuantityNum;
    }

    public BigDecimal getMajQuantityNum() 
    {
        return majQuantityNum;
    }

    public void setMinQuantityNum(BigDecimal minQuantityNum) 
    {
        this.minQuantityNum = minQuantityNum;
    }

    public BigDecimal getMinQuantityNum() 
    {
        return minQuantityNum;
    }

    public void setCheckResult(String checkResult) 
    {
        this.checkResult = checkResult;
    }

    public String getCheckResult() 
    {
        return checkResult;
    }

    public void setInspectDate(Date inspectDate) 
    {
        this.inspectDate = inspectDate;
    }

    public Date getInspectDate() 
    {
        return inspectDate;
    }

    public void setInspector(String inspector) 
    {
        this.inspector = inspector;
    }

    public String getInspector() 
    {
        return inspector;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public void setAttr1(String attr1) 
    {
        this.attr1 = attr1;
    }

    public String getAttr1() 
    {
        return attr1;
    }

    public void setAttr2(String attr2) 
    {
        this.attr2 = attr2;
    }

    public String getAttr2() 
    {
        return attr2;
    }

    public void setAttr3(Long attr3) 
    {
        this.attr3 = attr3;
    }

    public Long getAttr3() 
    {
        return attr3;
    }

    public void setAttr4(Long attr4) 
    {
        this.attr4 = attr4;
    }

    public Long getAttr4() 
    {
        return attr4;
    }

    public void setIsDelete(String isDelete) 
    {
        this.isDelete = isDelete;
    }

    public String getIsDelete() 
    {
        return isDelete;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("ipqcId", getIpqcId())
            .append("ipqcCode", getIpqcCode())
            .append("ipqcName", getIpqcName())
            .append("ipqcType", getIpqcType())
            .append("templateId", getTemplateId())
            .append("sourceDocId", getSourceDocId())
            .append("sourceDocType", getSourceDocType())
            .append("sourceDocCode", getSourceDocCode())
            .append("sourceLineId", getSourceLineId())
            .append("workOrderId", getWorkOrderId())
            .append("workOrderCode", getWorkOrderCode())
            .append("workOrderName", getWorkOrderName())
            .append("taskId", getTaskId())
            .append("taskCode", getTaskCode())
            .append("taskName", getTaskName())
            .append("factoryId", getFactoryId())
            .append("factoryCode", getFactoryCode())
            .append("factoryName", getFactoryName())
            .append("processId", getProcessId())
            .append("processCode", getProcessCode())
            .append("processName", getProcessName())
            .append("productId", getProductId())
            .append("productCode", getProductCode())
            .append("productName", getProductName())
            .append("productSfn", getProductSfn())
            .append("unit", getUnit())
            .append("quantityCheckNum", getQuantityCheckNum())
            .append("quantityUnqualifiedNum", getQuantityUnqualifiedNum())
            .append("quantityQualifiedNum", getQuantityQualifiedNum())
            .append("crRate", getCrRate())
            .append("majRate", getMajRate())
            .append("minRate", getMinRate())
            .append("crQuantityNum", getCrQuantityNum())
            .append("majQuantityNum", getMajQuantityNum())
            .append("minQuantityNum", getMinQuantityNum())
            .append("checkResult", getCheckResult())
            .append("inspectDate", getInspectDate())
            .append("inspector", getInspector())
            .append("status", getStatus())
            .append("remark", getRemark())
            .append("attr1", getAttr1())
            .append("attr2", getAttr2())
            .append("attr3", getAttr3())
            .append("attr4", getAttr4())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("isDelete", getIsDelete())
            .toString();
    }
}
